package com.gz.droolsrule.dao;

import com.gz.droolsrule.pojo.BaseRuleActionInfo;
import com.gz.droolsrule.pojo.BaseRuleSceneInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * ClassName: BaseRuleActionInfoMapper <br/>
 * Description: <br/>
 * date: 2019/5/29 16:34<br/>
 *
 * @author gz<br />
 * @since JDK 1.8
 */
@Mapper
public interface BaseRuleActionInfoMapper {
    /**
     * 方法说明: 获取动作列表
     *
     * @param baseRuleActionInfo 参数
     */
    List<BaseRuleActionInfo> findBaseRuleActionInfoList(BaseRuleActionInfo baseRuleActionInfo);

    /**
     * 方法说明: 根据场景获取所有的动作信息
     *
     * @param sceneInfo 参数
     */
    List<BaseRuleActionInfo> findRuleActionListByScene(BaseRuleSceneInfo sceneInfo);


    /**
     * 方法说明: 根据规则id获取动作集合
     *
     * @param ruleId 参数
     */
    List<BaseRuleActionInfo> findRuleActionListByRule(@Param("ruleId") Long ruleId);

    /**
     * 方法说明: 查询是否有实现类的动作
     *
     * @param ruleId 规则id
     */
    Integer findRuleActionCountByRuleIdAndActionType(@Param("ruleId") Long ruleId);
}
